// pages/detail/detail.js
Page({
  data: {
    obj: null,
    price: 0,
    isOperating: false // 新增操作状态锁
  },

  onLoad(options) {
    if (!options?.id) {
      wx.showToast({ title: '参数错误', icon: 'none' });
      wx.navigateBack();
      return;
    }
    this.getDetail(options.id);
  },

  getDetail(id) {
    wx.cloud.database()
      .collection('woxinima')
      .doc(id)
      .get()
      .then(res => {
        if (res.data) {
          this.setData({ 
            obj: res.data,
            price: res.data.price // 初始化价格输入框
          });
        } else {
          wx.showToast({ title: '商品不存在', icon: 'none' });
          setTimeout(() => wx.navigateBack(), 1500);
        }
      })
      .catch(err => {
        console.error('数据加载失败:', err);
        wx.showToast({ title: '加载失败', icon: 'none' });
      });
  },

  getPrice(e) {
    const price = Number(e.detail.value);
    if (!isNaN(price)) {
      this.setData({ price });
    }
  },

  updatePrice() {
    if (!this.data.obj?._id) return;
    
    this.setData({ isOperating: true });
    
    wx.cloud.database()
      .collection('woxinima')
      .doc(this.data.obj._id)
      .update({
        data: { price: this.data.price }
      })
      .then(() => {
        wx.showToast({ title: '更新成功' });
        this.getDetail(this.data.obj._id); // 刷新数据
      })
      .catch(err => {
        console.error('更新失败:', err);
        wx.showToast({ title: '更新失败', icon: 'none' });
      })
      .finally(() => {
        this.setData({ isOperating: false });
      });
  },

  remove() {
    if (!this.data.obj?._id) return;

    wx.showModal({
      title: '确认删除',
      content: `确定删除 ${this.data.obj.name} 吗？`,
      success: (res) => {
        if (res.confirm) {
          this.setData({ isOperating: true });
          wx.cloud.database()
            .collection('woxinima')
            .doc(this.data.obj._id)
            .remove()
            .then(() => {
              wx.showToast({ title: '删除成功' });
              setTimeout(() => wx.navigateBack(), 1000);
            })
            .catch(err => {
              console.error('删除失败:', err);
              wx.showToast({ title: '删除失败', icon: 'none' });
            })
            .finally(() => {
              this.setData({ isOperating: false });
            });
        }
      }
    });
  },
  onLoad(options) {
    console.log('【DEBUG】URL参数options:', options); // 打印完整参数
    if (!options?.id) {
      wx.showToast({ title: '缺少商品ID', icon: 'none' });
      return;
    }
    console.log('【DEBUG】接收到的id:', options.id); // 重点打印id
    this.getDetail(options.id);
  }
});